作者:水晶玻璃新座 | 来源:互联网 | 2023-07-13 19:56
篇首语:本文由编程笔记#小编为大家整理,主要介绍了操作系统学习-01 :并发与并行相关的知识,希望对你有一定的参考价值。
基本概念:
(1)并发:在一个时间段内发生了一个以上的事件,称这几个事件之间具有并发性。
(2)并行:指的是多个事件在同一个时刻点发生,称这几个事件具有并行性。
图示如下:
说明:
并发(concurrent)<---相对于--->顺序(sequential)
顺序:上一个开始执行的任务完成后,当前任务才能开始执行
并发:无论上一个开始执行的任务是否完成,当前任务都可以开始执行
小结论:顺序执行可以确定任务完成的先后顺序,并行则无法确定完成的先后顺序。
并行(parallel) <---相对于----->串行(serial):
串行:有一个任务执行单元,从物理上就只能一个任务、一个任务地执行
并行:有多个任务执行单元,从物理上就可以多个任务一起执行
(也就是说,在任意时间点上,串行执行时必然只有一个任务在执行,而并行则不一定。)
前者关注的是任务的抽象调度、后者关注的是任务的实际执行,并行一定会允许并发。
总结:
并行指的是不同的线程同时使用不同的CPU资源
并发指的是不同的线程之间交替使用同一个CPU资源